package cn.cheln.support.mobile.root;

public class Root
{
  public static Boolean mHasRoot = null;

  // ERROR //
  public static int execRootCmdSilent(String paramString)
  {
    // Byte code:
    //   0: iconst_m1
    //   1: istore_1
    //   2: aconst_null
    //   3: astore_2
    //   4: invokestatic 25	java/lang/Runtime:getRuntime	()Ljava/lang/Runtime;
    //   7: ldc 27
    //   9: invokevirtual 31	java/lang/Runtime:exec	(Ljava/lang/String;)Ljava/lang/Process;
    //   12: astore 7
    //   14: new 33	java/io/DataOutputStream
    //   17: dup
    //   18: aload 7
    //   20: invokevirtual 39	java/lang/Process:getOutputStream	()Ljava/io/OutputStream;
    //   23: invokespecial 42	java/io/DataOutputStream:<init>	(Ljava/io/OutputStream;)V
    //   26: astore 8
    //   28: aload 8
    //   30: new 44	java/lang/StringBuilder
    //   33: dup
    //   34: aload_0
    //   35: invokestatic 50	java/lang/String:valueOf	(Ljava/lang/Object;)Ljava/lang/String;
    //   38: invokespecial 53	java/lang/StringBuilder:<init>	(Ljava/lang/String;)V
    //   41: ldc 55
    //   43: invokevirtual 59	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   46: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   49: invokevirtual 66	java/io/DataOutputStream:writeBytes	(Ljava/lang/String;)V
    //   52: aload 8
    //   54: invokevirtual 69	java/io/DataOutputStream:flush	()V
    //   57: aload 8
    //   59: ldc 71
    //   61: invokevirtual 66	java/io/DataOutputStream:writeBytes	(Ljava/lang/String;)V
    //   64: aload 8
    //   66: invokevirtual 69	java/io/DataOutputStream:flush	()V
    //   69: aload 7
    //   71: invokevirtual 75	java/lang/Process:waitFor	()I
    //   74: pop
    //   75: aload 7
    //   77: invokevirtual 78	java/lang/Process:exitValue	()I
    //   80: istore 10
    //   82: iload 10
    //   84: istore_1
    //   85: aload 8
    //   87: ifnull +64 -> 151
    //   90: aload 8
    //   92: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   95: iload_1
    //   96: ireturn
    //   97: astore 5
    //   99: aload 5
    //   101: invokevirtual 84	java/lang/Exception:printStackTrace	()V
    //   104: aload_2
    //   105: ifnull -10 -> 95
    //   108: aload_2
    //   109: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   112: iload_1
    //   113: ireturn
    //   114: astore 6
    //   116: aload 6
    //   118: invokevirtual 85	java/io/IOException:printStackTrace	()V
    //   121: iload_1
    //   122: ireturn
    //   123: astore_3
    //   124: aload_2
    //   125: ifnull +7 -> 132
    //   128: aload_2
    //   129: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   132: aload_3
    //   133: athrow
    //   134: astore 4
    //   136: aload 4
    //   138: invokevirtual 85	java/io/IOException:printStackTrace	()V
    //   141: goto -9 -> 132
    //   144: astore 11
    //   146: aload 11
    //   148: invokevirtual 85	java/io/IOException:printStackTrace	()V
    //   151: iload_1
    //   152: ireturn
    //   153: astore_3
    //   154: aload 8
    //   156: astore_2
    //   157: goto -33 -> 124
    //   160: astore 5
    //   162: aload 8
    //   164: astore_2
    //   165: goto -66 -> 99
    //
    // Exception table:
    //   from	to	target	type
    //   4	28	97	java/lang/Exception
    //   108	112	114	java/io/IOException
    //   4	28	123	finally
    //   99	104	123	finally
    //   128	132	134	java/io/IOException
    //   90	95	144	java/io/IOException
    //   28	82	153	finally
    //   28	82	160	java/lang/Exception
  }

  public static boolean haveRoot()
  {
    if (mHasRoot == null)
      mHasRoot = Boolean.valueOf(rootExec("echo test").equals(""));
    return mHasRoot.booleanValue();
  }

  // ERROR //
  public static String rootExec(String paramString)
  {
    // Byte code:
    //   0: aconst_null
    //   1: astore_1
    //   2: aconst_null
    //   3: astore_2
    //   4: invokestatic 25	java/lang/Runtime:getRuntime	()Ljava/lang/Runtime;
    //   7: ldc 27
    //   9: invokevirtual 31	java/lang/Runtime:exec	(Ljava/lang/String;)Ljava/lang/Process;
    //   12: astore_1
    //   13: new 33	java/io/DataOutputStream
    //   16: dup
    //   17: aload_1
    //   18: invokevirtual 39	java/lang/Process:getOutputStream	()Ljava/io/OutputStream;
    //   21: invokespecial 42	java/io/DataOutputStream:<init>	(Ljava/io/OutputStream;)V
    //   24: astore 7
    //   26: aload 7
    //   28: new 44	java/lang/StringBuilder
    //   31: dup
    //   32: aload_0
    //   33: invokestatic 50	java/lang/String:valueOf	(Ljava/lang/Object;)Ljava/lang/String;
    //   36: invokespecial 53	java/lang/StringBuilder:<init>	(Ljava/lang/String;)V
    //   39: ldc 55
    //   41: invokevirtual 59	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   44: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   47: invokevirtual 66	java/io/DataOutputStream:writeBytes	(Ljava/lang/String;)V
    //   50: aload 7
    //   52: ldc 71
    //   54: invokevirtual 66	java/io/DataOutputStream:writeBytes	(Ljava/lang/String;)V
    //   57: aload 7
    //   59: invokevirtual 69	java/io/DataOutputStream:flush	()V
    //   62: aload_1
    //   63: invokevirtual 75	java/lang/Process:waitFor	()I
    //   66: pop
    //   67: aload 7
    //   69: ifnull +8 -> 77
    //   72: aload 7
    //   74: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   77: aload_1
    //   78: invokevirtual 110	java/lang/Process:destroy	()V
    //   81: ldc 95
    //   83: areturn
    //   84: astore 5
    //   86: aload_2
    //   87: ifnull +7 -> 94
    //   90: aload_2
    //   91: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   94: aload_1
    //   95: invokevirtual 110	java/lang/Process:destroy	()V
    //   98: ldc 112
    //   100: areturn
    //   101: astore_3
    //   102: aload_2
    //   103: ifnull +7 -> 110
    //   106: aload_2
    //   107: invokevirtual 81	java/io/DataOutputStream:close	()V
    //   110: aload_1
    //   111: invokevirtual 110	java/lang/Process:destroy	()V
    //   114: aload_3
    //   115: athrow
    //   116: astore 10
    //   118: goto -37 -> 81
    //   121: astore 4
    //   123: goto -9 -> 114
    //   126: astore_3
    //   127: aload 7
    //   129: astore_2
    //   130: goto -28 -> 102
    //   133: astore 6
    //   135: goto -37 -> 98
    //   138: astore 8
    //   140: aload 7
    //   142: astore_2
    //   143: goto -57 -> 86
    //
    // Exception table:
    //   from	to	target	type
    //   4	26	84	java/lang/Exception
    //   4	26	101	finally
    //   72	77	116	java/lang/Exception
    //   77	81	116	java/lang/Exception
    //   106	110	121	java/lang/Exception
    //   110	114	121	java/lang/Exception
    //   26	67	126	finally
    //   90	94	133	java/lang/Exception
    //   94	98	133	java/lang/Exception
    //   26	67	138	java/lang/Exception
  }
}

/* Location:           H:\360云盘\lewa_explorer_3.0\bin\FileApp_orig_dex2jar.jar
 * Qualified Name:     cn.cheln.support.mobile.root.Root
 * JD-Core Version:    0.5.2
 */